1. Field of the Invention
The present invention relates to an improved method and structure for configuring DMA engines to implement DMA transfers from a serial buffer to a system memory on a serial interface.
2. Related Art
Serial buffers have been used to transfer data between host processor and a system memory. These serial buffers typically use descriptor structures, such as a descriptor buffer list, to specify the destination of data transfers in the system memory. The descriptor buffer list can be based on either a ring buffer or a link list, which requires software to set up (enqueue) and tear down (dequeue). Consequently, performing buffer management using the descriptor buffer list undesirably consumes processing power of the host processor.
A dedicated DMA engine is typically used to implement data transfers between a queue/buffer of the serial buffer and the system memory. When multiple DMA engines have been used, only one DMA engine is active at any given time to transfer data from a specific queue/buffer of the serial buffer. Using multiple DMA engines in this manner is inefficient.
It would therefore be desirable to have an improved method for offloading data from a serial buffer, which overcomes the above described deficiencies of conventional serial buffers.